图片大小过大导致加速速度变慢 Nginx打开Gzip
修改nginx.conf
gzip on; |
解释各行
- 第1行:开启Gzip
- 第2行:不压缩临界值,大于1K的才压缩,一般不用改
- buffer,就是,嗯,算了不解释了,不用改
- 用了反向代理的话,末端通信是HTTP/1.0,有需求的应该也不用看我这科普文了;有这句的话注释了就行了,默认是HTTP/1.1
- 压缩级别,1-10,数字越大压缩的越好,时间也越长,看心情随便改吧
- 进行压缩的文件类型,缺啥补啥就行了,JavaScript有两种写法,最好都写上吧,总有人抱怨js文件没有压缩,其实多写一种格式就行了
- 跟Squid等缓存服务有关,on的话会在Header里增加”Vary: Accept-Encoding”,我不需要这玩意,自己对照情况看着办吧
- IE6对Gzip不怎么友好,不给它Gzip了
wq保存退出,重新加载Nginx
/usr/local/nginx/sbin/nginx -s reload |
验证是够开始Gzip
未开启Gzip
开启Gzip
- 如果出现了Content-encoding:gzip 则表示gzip以及压缩。图片1.4MB的图片已压缩至1.3MB.
- 这里压缩的数据类型是json数据,所以需要将application/json 添加到gzip_types中
对于Tomcat
####修改server.xml<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
compression="on" // 打开压缩功能 (on|off)
compressionMinSize="2048" // 启用压缩的输出内容大小,这里面默认为2KB
noCompressionUserAgents="gozilla, traviata" // 对于这里配置的浏览器,不启用压缩
compressableMimeType="text/html,text/xml,text/plain,text/css,application/javascript" //对哪些文件类型启用压缩
useSendfile="false" //useSendfile属性默认为true, 会禁用任何可能的压缩, 改成false就好了
/>